#ifndef _EQUIP_H
#define _EQUIP_H

#define ITEM_EQUIP_TYPE 1

#include <string>
#include "item.h"
using namespace std;

enum EItemAction
{
    Use_Item,
    Drop_Item,
};


class EquipBaseItem : public BaseTypeItem
{
private:

#define EQUIP_TEMPLATE_STRNUM 5

    struct EquipData
    {
        char stamina;
        char defense;
    };

    struct EquipTemplateData
    {
        int  id;
        char stamina;
        char defense;
        char anydata;
        string scriptFileName;
        bool hasScript;

        EquipTemplateData()
        {
            hasScript = false;
        }
    };

    EquipTemplateData* m_templateItem[1024];

public:
    EquipBaseItem();

    void makeItem(Item& item) const;
    void doActionItem(int ActionID, Item& item) const;

    void loadItemTemplate(const char* fileName);

    void parseTemplateItem(const char* parray[], int arrlen);

    static void parseEquipTemplateItem(const char* strArray[], int arrayLen, void* arg);
};

#endif
